package com.hbx.service;

import com.hbx.dto.resource.PushResDto;
import com.hbx.dto.resource.SearchResDto;
import com.hbx.model.Resource;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hbx.utils.Result;
import com.hbx.vo.res.MyResVo;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author hbx
 * @since 2022-01-15
 */
public interface ResourceService extends IService<Resource> {

    /**
     * 用户发布资源
     * @param pushResDto
     * @param r
     */
    void pushResource(PushResDto pushResDto, Result r);

    /**
     * 获取资源列表
     * @param search
     * @param r
     */
    void getResourceList(SearchResDto search, Result r);

    /**
     * 查询我的资源
     * @param pageSize
     * @param userId
     * @param r
     */
    void getMyResource(Integer pageSize, Integer userId, Result<MyResVo> r);

    /**
     * 删除我的资源
     * @param resId
     * @param r
     */
    void removeRes(Integer resId, Result r);

    /**
     * 获取资源详情
     * @param resId
     * @param r
     */
    void getResDetail(Integer resId, Result r);
}
